﻿using MyModule.Breeding;
using System;
using System.Collections.Generic;
using System.Text;
using System.Threading.Tasks;

namespace MyModule.ManageSheep
{
    public interface IEliminateService
    {

        Task<List<EliminateVarietyDreprDTO>> GetListAppAsync(int ECid, string? Earbugles);
        Task<ResultDto<EliminateDTO>> CreateAsync(EliminateDTO eliminateDTO);
        Task DeleteAsync(int Eid);
        Task<EliminateDTO> GetListAsync(int id);
        Task<ResultDto<EliminateDTO>> UpdateAsync(EliminateDTO eliminateDTO);

        Task<List<EliminateCauseDTO>> GetEliminateCauseAsync();
        Task<List<DreproductionDTO>> GetDreproductionAsync();
        Task<List<BreedingDTO>> GetSheepBreedingCounts();
        Task<int> GetHerdsCount();
        Task<List<DropdownItemDto>> GetEarbugles();
        Task<List<BreedingDTO>> GetSeedmaleCount();
        Task<int> GetBreedingCount();
        Task<int> GetParturitionCount();
        Task<int> GetSumLivesheep();
        Task<int> GetSumDeadsheep();
        Task<int> GetAblactationDeadsheep();
        Task<double> GetAblactationWeight();
        Task<double> GetAvgWeight();

    }
}
